Funktionen für Formeln / Operanden und Operatoren
Operanden
Operanden können Konstanten, Datenfelder oder Formelfelder sein.
- Numerische Konstanten:
Konstanten können in dezimaler, binärer, oktaler oder hexadezimaler Schreibweise eingegeben werden.
Bei der binären Schreibweise ist ein 'b' anzuhängen , bei der oktalen ein 'o' und bei der hexadezimalen ein 'h'.
Bei gebrochenen Zahlen ist das in Windows eingestellte Dezimalzeichen zu verwenden.
Ausschließlich bei der (normalen) dezimalen Schreibweise ist auch eine Darstellung in Exponentialdarstellung möglich. Dabei ist zuerst die Mantisse anzugeben, danach ein 'E' und am Ende der Exponent zur Basis 10.
Eine vordefinierte Konstante ist pi mit 3.14159... . - Logische Konstanten:
Logikkonstanten sind true und false; - Zeichenkettenkonstanten / -funktionen:
Zeichenkettenkonstanten sind in Anführungszeichen " einzuschließen. Innere Anführungszeichen sind zu doppeln.
user (liefert das zweistellige Benutzerkürzel) - Datumskonstanten:
date (liefert das aktuelle Rechnerdatum)
now (liefert das aktuelle Rechnerdatum mit Zeitangabe) - Konstante für leere Felder:
null
Null-Werte sollten in Formularen nicht an Formelplatzhalter zugewiesen werden. Sie können für die Auswertung von select- und dbf-Anweisungen benutzt werden. Der Vergleich mit anderen Typen liefert stets false. - Variablen in Formeln (variable Operanden, Datenfelder) werden über Auswahlschalter eingefügt und mit geschweiften Klammern gekennzeichnet. Formelausdrücke können Zeichenketten, Zahlen, Wahrheitswerte und eingeschränkt auch null-Werte (unbestimmt vom Wert und Typ) verarbeiten und als Ergebnis liefern.
Die Verarbeitung von Datums- und Zeitwerten erfolgt
über Zahlen, wobei der ganzzahlige Anteil das Datum und der gebrochene
Anteil den Zeitanteil enthält. So kann man beispielsweise das Datum des
nächsten Tages andrucken, wenn man zur "Datumszahl" eine 1 addiert z.B.:
[V:0:DATS:::0::{System.Datum/Uhrzeit}+1]
[V:0::::0::asdatestring({System.Datum/Uhrzeit}+1;"DD.MM.YYYY")]
Die Abarbeitung erfolgt nach den üblichen Vorrangregeln (Potenzen vor Punktrechnung vor Strichrechnung). Wollen Sie eine bestimmte Abarbeitungsreihenfolge festlegen, müssen Sie runde Klammern benutzen.
Haben Funktionen mehrere Parameter, sind diese durch Semikolon zu trennen.
- für numerische Operanden
+
Addition (von Zahlen oder Zeichenketten)
-
negativer Wert oder Subtraktion
*
Multiplikation
/
Division
mod
Modulo-Funktion (Bsp.: 5 mod 3 ergibt 2)
div
ganzzahlige Division (Bsp.: 4 div 3 ergibt 1)
^
Potenz, nach Möglichkeit durch Multiplikationen ersetzen (Bsp.: 2 ^ 4 ergibt 16)
!
Fakultät (Bsp.: ! 5 ergibt 1*2*3*4*5=120)
ln
natürlicher Logarithmus (Basis e)
(Bsp.: ln(2,71828182845905) ergibt etwa 1)ld
Logarithmus zur Basis 2 (Bsp.: ld (2) ergibt 1)
lg
dekadischer Logarithmus (Basis 10) (Bsp.: lg(10) ergibt 1)
abs
Absolutbetrag (Bsp. abs(-11) ergibt 11)
int
ganzzahliger Anteil (Bsp.: int(-1,7) ergibt -1)
sign
Signumfunktion (Ergebnis ist : -1 für Werte <0, 1 für Werte>0, 0 bei 0)
frac
gebrochener Anteil (Bsp.: frac(-1,7) ergibt - 0,7)
floor
größte ganze Zahl, die kleiner oder gleich dem angegebenen numerischen Ausdruck ist (Bsp.: floor(1,7) ergibt 1)
ceiling
kleinste ganze Zahl, die größer oder gleich dem angegebenen numerischen Ausdruck ist (Bsp.: ceiling(1,7) ergibt 2)
rdm
Zufallszahl kleiner als der Operand erzeugen (Bsp.: rdm(4) liefert 0, 1, 2 oder 3)
rnd
Rundung
rn2
Rundung auf 2 Nachkommastellen
sqrt
Quadratwurzel
sin
Sinusfunktion
cos
Kosinusfunktion
tan
Tangensfunktion
cot
Kotangensfunktion
not
logische Negation der Binärwerte
and
logische Undverknüpfung der Binärwerte
ior
logische Oderverknüpfung der Binärwerte
xor
log. Exklusivoderverknüpfung der Binärwerte
shl
bitweises Verschieben nach links
shr
bitweises Verschieben nach rechts
- für Zeichenketten-Operanden
+
Addition (Aneinanderkettung von Zeichenketten)
-
Drehung von Zeichenketten (REVERSE)
Beispiel:
-("Regal") liefert als Ergebnis lageR* wird eine Zeichenkette mit einer Zahl > 0 multipliziert erhält man eine Zeichenkette, in der die ursprüngliche Zeichenkette vervielfältigt wurde;
Faktoren < 0 ergeben eine Aneinanderreihung der gedrehten ursprünglichen Zeichenkette;
Beispiele:
"0" * (10 - length({Nr})) + {Nr} liefert eine Zeichenkette der Länge 10, in der der Wert von {Nr} linksbündig mit Nullen aufgefüllt wird;
"Regal" + lower(("Regal"*(-1))) liefert als Ergebnis Regallagerupper
Großschreibung
lower
Kleinschreibung
substring
Teilzeichenkette
1. Parameter: Ausgangszeichenkette
2. Parameter: Startposition (numerisch), ist der Parameter kleiner Null erfolgt die Ermittlung der Teilzeichenkette von rechts.
3. Parameter: Länge (numerisch)
der 3. Parameter kann weggelassen werden
Beispiel:
substring("ABCDEF";1;3) liefert "ABC"substring("ABCDEF";-1;3) liefert "DEF"
replace ersetzt (nicht rekursiv) alle Vorkommen des zweiten Zeichenfolgenausdrucks im ersten Zeichenfolgenausdruck durch einen dritten Ausdruck;
1. Parameter: Ausgangszeichenkette
2. Parameter: Suchzeichenkette
3. Parameter: Ersatzzeichenkette
Der 3. Parameter kann zum Löschen aller Vorkommen der Suchzeichenkette aus der Ausgangszeichenkette weggelassen werden.
Beispiel:
replace("Staumauer";"u";"hl") liefert Stahlmahlerasfilename für Dateinamen nicht erlaubte Zeichen der Ausgangszeichenkette werden durch ein Ersatzzeichen ersetzt;
1. Parameter: Ausgangszeichenkette
2. Parameter: Ersatzzeichen
Der 2. Parameter kann weggelassen werden, als Ersatzzeichen wird dann "_" verwendet.
Beispiel:
asfilename("A < > ? "" : | \ / * Z";"x")
liefert "A x x x x x x x x x Z"concat verbindet zwei Zeichenfolgenausdrücke durch einen Verkettungsausdruck;
1. Parameter: eine Zeichenkette
2. Parameter: eine Zeichenkette
3. Parameter: Verkettungszeichenkette
Ist eine der Zeichenketten leer, wird die Zeichenkette, die nicht leer ist, ohne Verkettungsausdruck ausgegeben.
Beispiel:
concat("Mustermann";"Max";", ") liefert Mustermann, Maxnewline mit dieser Konstante kann ein Zeilenumbruch innerhalb des aktuellen Platzhalters erzwungen werden
Beispiel:
concat({Anrede}; concat({Name}; {Vorname}; ", "); newline) liefert
Herr
Mustermann, Maxlength liefert in einem numerischen Ergebnis die Anzahl der Zeichen in der Zeichenkette trim entfernt am Anfang und Ende einer Zeichenkette alle Leer- und Steuerzeichen ltrim entfernt am Anfang einer Zeichenkette alle Leer- und Steuerzeichen rtrim entfernt am Ende einer Zeichenkette alle Leer- und Steuerzeichen locate liefert in einem numerischen Ergebnis die erste Position der Suchzeichenkette in einer Ausgangszeichenkette;
falls die Suchzeichenkette nicht enthalten ist, ist das Ergebnis 0;
1. Parameter: Suchzeichenkette
2. Parameter: Ausgangszeichenkettelines liefert die Anzahl der Zeilen eines Langtextes;
Parameter: eine Zeichenkette
Beispiel:
lines({.Kopftext})guid36 liefert als Ergebnis eine Zeichenkette (36 Zeichen) ohne die führende und schließende Klammer
1. Parameter: eine 38-stellige GUID
Beispiel:
guid36({Kennung})fill füllt eine Zeichenkette bis zur definierten Länge auf
1. Parameter: Ausgangszeichenkette
2. Parameter: Gesamtlänge (numerisch)
3. Parameter: Füllzeichen(-kette)
4. Parameter: links auffüllen (true); rechts auffüllen (false)
der 4. Parameter kann weggelassen werden (Standard ist true)
Beispiele:
fill(asstring({FreieZahl1});5;"0")
fill({Bezeichnung};80;" ";false)split zerteilt eine Zeichenkette in gleichmäßige Teile
1. Parameter: Ausgangszeichenkette
2. Parameter: Anzahl der Zeichen nach der jeweils getrennt werden soll (numerisch). Ist der Parameter kleiner Null, erfolgt die Aufsplittung vom Ende beginnend.
3. Parameter: Füllzeichen(-kette)
der 3. Parameter kann weggelassen werden (Standard ist ein Leerzeichen)
Beispiel:
split({IBAN};4)intersectcount mit dieser Funktion lässt sich die Anzahl übereinstimmender Teilzeichenketten zweier Zeichenketten ermitteln
1. Parameter: Zeichenkette (eine "Liste" von Teilzeichenketten)
2. Parameter: Zeichenkette (eine "Liste" von Teilzeichenketten)
3. Parameter: Trennzeichen
der 3. Parameter kann weggelassen werden (Standard ist ein |)Beispiel:
intersectcount("ABC|D|EF";"G|EF|HM|ABC") liefert den Wert 2 für die Übereinstimmungen von "ABC" und "EF" in beiden Parametern
isempty
Gibt einen booleschen Wert zurück, der angibt, ob Zeichenkette leer ist.
Syntax: isempty("text")
Beispiele:
Formel | Ergebnis
isempty("") | true
isempty(" ") | true
isempty("X") | false
isnotempty
Gibt einen booleschen Wert zurück, der angibt, ob Zeichenkette nicht leer ist.
Syntax: isnotempty("text")
Beispiele:
Formel | Ergebnis
isnotempty("") | false
isnotempty(" ") | false
isnotempty("X") | true
- für Logikoperanden
not
logische Negation
and
logische Und-Verknüpfung
ior
logische Oder-Verknüpfung
xor
logische Exklusiv-Oder-Verknüpfung
if Fallunterscheidung
1. Parameter: logischer Ausdruck
2. Parameter: Ausdruck beliebigen Formats, welcher das Ergebnis liefert, wenn der 1. Parameter den Wert true besitzt
3. Parameter: Ausdruck beliebigen Formats, welcher das Ergebnis liefert, wenn der 1. Parameter den Wert false besitztcase Die Funktion hat mindestens 4 Parameter, die Anzahl ist dabei immer geradzahlig. Der erste Parameter ist der Wert, welcher verglichen werden soll, der letzte das Ergebnis wenn keine der angegebenen Möglichkeiten übereinstimmt. Die mittleren Parameter sind paarweise ein Wert und das bei Übereinstimmung auszugebende Ergebnis.
Beispiel:
case({Land};"DE";"Deutschland";"AT";"Österreich";"CH";"Schweiz";"")
- Erkennung und Behandlung von Null-Werten
isnull
1. Parameter: ein Ausdruck von beliebigem Format(Zeichenkette, Zahl, Datum, logisch, Null-Wert)
2. Parameter: Ergebnis, wenn der erste Parameter null ist
Beispiel:
// Ersetzung eventueller Null-Werte durch einen Leerstring
isnull(select("FreierText1 from kunden where nummer = '10000'");"")
// Ersetzung eventueller Null-Werte durch die Zahl 0
isnull(select("FreieZahl1 from kunden where nummer = '10000'");0) - Vergleichsoperatoren (die Operanden müssen vom gleichen Typ sein und liefern ein logisches Ergebnis)
=
Gleichheit
<>
Ungleichheit
< kleiner > größer <= kleiner gleich >= größer gleich
- Umwandlungsfunktionen
asfloat
liefert den numerischen Wert einer Zeichenkette;
1. Parameter: Ausgangszeichenkette
2. Parameter: numerischer Wert, der das Ergebnis liefert, wenn die Ausgangszeichenkette nicht in eine Zahl umgewandelt werden kann.
Der 2. Parameter kann weggelassen werden.asstring wandelt einen numerischen Wert in eine Zeichenkette um;
1. Parameter: Ausgangszahl
2. Parameter: ein Format für die Darstellung wie z.B. "#,##0.00"
der 2. Parameter kann weggelassen werdenasdatestring wandelt ein Datum in eine Zeichenkette um;
1. Parameter: Ausgangsdatum
2. Parameter: ein Format für die Darstellung wie z.B."MMM.YYY"
der 2. Parameter kann weggelassen werdenasdatetime wandelt ein Datum in einen numerischen Wert (internes Datumsformat, mit dem gerechnet werden kann) um;
ein Parameter vom Typ Zeichenkette: Ausgangsdatum im Windowsformatmonat wandelt einen numerischen Wert zwischen 1 und 12 in den Monatsnamen um, Werte > 12 bzw. < 1 geben einen Leerstring aus;
z.B. monat(6) liefert "Juni"xmltag wandelt eine Zeichenkette in das Format UTF8 um und schließt das Ergebnis in < > ein
Parameter: eine Zeichenkette
Beispiel:
xmltag("Text") liefert <Text>xmlstring wandelt eine Zeichenkette in UTF8 um, nachdem zuvor <, > und & ersetzt wurden
Parameter: eine Zeichenkettehtmlintext liefert den Textinhalt eines HTML-Quelltextes
Parameter: Ausgangszeichenkette
Beispiel:
htmlintext({HTMLText})encodebase64 kodiert eine Zeichenkette per Base64-Verfahren;
Parameter: eine Zeichenkette
decodebase64 dekodiert eine mit dem Base64-Verfahren kodierte Zeichenkette;
Parameter: eine Zeichenkette
stringtonumber
wandelt eine Zeichenkette in eine Zahl um.
Syntax: stringtonumber("zahlAlsText"; "dezimaltrennzeichen")
1. Parameter: Text - Pflichtfeld2. Parameter: optional; Vorgabewert = '.'
Beispiele:
Formel | Ergebnis
stringtonumber("3.14") | 3.14
stringtonumber("3.14"; ".") | 3.14
stringtonumber("3,14") | eine Fehlermeldung "kein gültiger Gleitkommawert, oder leer"
stringtonumber("3,14"; ",") | 3.14
- Hilfsfunktionen zum Schreiben von Transact-SQL-Select-Anweisungen
astsqlfloat
1. Parameter: Zahl
astsqlfloat(1,2345) liefert 1.2345astsqlnchar 1. Parameter: Zeichenkette
astsqlnchar("123") liefert N'123'astsqldate 1. Parameter: Ausgangsdatum
astsqldate(date) liefert z.B. am 1.9.2022 N'01.09.2022'
astsqldate(44805) liefert N'01.09.2022'astsqlbit 1. Parameter: logischer Wert
astsqlbit(true) liefert 1
Hinweis:
Die Funktionen liefern als Ergebnis eine Zeichenkette mit einem Leerzeichen am Anfang und am Ende und können zur Unterstützung beim Schreiben von Transact-SQL-Select-Anweisungen in Formeln oder eigenen Blöcken verwendet werden.
- Datumsfunktionen
zinstage
ermittelt die Zinstage entsprechend der 30tägigen Zinsperiode der Bank;
1. Parameter: Beginndatum
2. Parameter: Enddatumzinsmonate
ermittelt die Zinsmonate;
1. Parameter: Beginndatum
2. Parameter: Enddatumzahlungstermin
ermittelt aus einem Datum und den Angaben der Zahlungsbedingung einen Termin;
1. Parameter: Startdatum
2. Parameter: Typ der Berechnung
3. Parameter: Tagesangabekweek ermittelt die Kalenderwoche; als Parameter ist ein Datum als Variable z.B. kweek({.Datum})
oder internes Datumsformat anzugeben z.B. kweek(asdatetime("31.12.2021"))kyear ermittelt das Kalenderjahr zu dem die Kalenderwoche gehört; als Parameter ist ein Datum als Variable z.B. kyear({.Datum})
oder internes Datumsformat anzugeben z.B. kyear(asdatetime("31.12.2021"))stringtodays
Wandelt eine Zeichenkette in den (internen - Delphi Double) Datumswert um.
Syntax: stringtodays("datumAlsText"; "format")
1. Parameter: Text - Pflichtfeld
2. Parameter: optional; Vorgabewert = 'yyyyMMdd'
Beispiele:
Formel | Ergebnis
stringtodays("20241230") | 30.12.2024
stringtodays("20241230"; "yyyyMMdd") | 30.12.2024
stringtodays("2024.30.12"; "yyyy.dd.MM") | 30.12.2024
stringtodays("30.12.2024") | eine Fehlermeldung "Keine gültige Datums-/Zeitangabe"
Beispiele:
für das Datum 01.01.2022 liefert kweek eine 52, kyear die 2021 → der 01.01.2022 gehört zur 52.Kalenderwoche 2021
für das Datum 03.01.2022 liefert kweek eine 1, kyear die 2022 → der 03.01.2022 gehört zur 1.Kalenderwoche 2022
- Datenbankfunktionen
select liefert den Wert eines Tabellenfeldes;
als Parameter ist eine select-Anweisung anzugeben, wobei das führende select weggelassen wird;
liefert die select-Anweisung keinen Wert zurück, ist das Ergebnis null
- Funktionen zum Lesen u. Schreiben von Variablenwerten
iniput schreibt einen Eintrag in eine Ini-Datei oder löscht einen Eintrag; liefert als Ergebnis einen logischen Wert, ob der Befehl erfolgreich war:
1. Parameter: Dateiname, Dateinamen ohne Laufwerk beziehen sich auf das Mandantenverzeichnis;
2. Parameter: Sektionsbezeichnung;
3. Parameter: Bezeichnung des Eintrags;
4. Parameter: Zeichenkette, die eingetragen werden soll.
Bei Weglassen des 4. Parameters wird ein eventuell vorhandener Eintrag gelöscht.
//Eintrag erzeugen:
iniput(datenpfad + "TEST.INI";"Sektion";"Wert";"100")
//Eintrag löschen:
iniput(datenpfad + "TEST.INI";"Sektion";"Wert")iniget
liest eine Zeichenkette aus einer Ini-Datei:
1. Parameter: Dateiname, Dateinamen ohne Laufwerk beziehen sich auf das Mandantenverzeichnis;
2. Parameter: Sektionsbezeichnung;
3. Parameter: Bezeichnung des Eintrags;
4. Parameter: Ergebnis, wenn die Datei nicht existiert oder kein Eintrag in der Ini-Datei gefunden wird.
Bei Weglassen des 4. Parameters ist die leere Zeichenkette der Standardwert.
z.B. iniget(datenpfad + "TEST.INI";"Sektion";"Wert";"0")put speichert programmintern einen Wert, solange das Programm läuft:
1. Parameter: eine Zeichenkette für die Identifikation des Wertes (keine Unterscheidung von Groß- und Kleinschreibung)
2. Parameter: ein Ausdruck von beliebigem Format (Zeichenkette, Zahl, Datum, logisch, Null-Wert)
Beispiel:
// Abspeichern des aktuellen Zeitpunktes
put("zeit"; now)
// Anlegen oder Ändern der programminternen Variable "variable1" mit dem logischen Wert WAHR
put("variable1"; true)get liest programminterne Werte:
1. Parameter: eine Zeichenkette für die Identifikation des Wertes (keine Unterscheidung von Groß- und Kleinschreibung)
2. Parameter: Ergebnis, wenn programminterner Wert nicht vorhanden ist
Beispiel:
// Lesen der programminternen Variable "variable1" get("variable1"; false)
//ein Durchlaufzähler mit Namen "a"
put("a"; 1 + get("a"; 0))
- Spezielle Funktionen
alle Programme:
nur Warenwirtschaft:shellexecute zum Absetzen von Kommandos für das Betriebssystem;
1. Parameter (String): Name des Programms, das geöffnet werden soll
2. Parameter (String): er enthält die Kommandozeilenparameter für das Programm.
3. Parameter (Typ Zahl zwischen 0 und 10): Er ist dafür verantwortlich, in welchem Zustand das Fenster des gerufenen Programms geöffnet werden soll.
Als Ergebnis liefert die Funktion eine Zahl, die bei Zahlen kleiner 32 eine Fehlernummer darstellt, der 2. und 3. Parameter kann weggelassen werdenregexmatch zur Prüfung, ob eine Zeichenkette einem regulären Ausdruck entspricht;
1. Parameter (String): eine Zeichenkette
2. Parameter (String): regulärer Ausdruck
Als Ergebnis liefert die Funktion true oder false.datenpfad liefert den Datenpfad mit abschließendem Backslash mandantenpfad liefert den Mandantenpfad mit abschließendem Backslash clipstring liest eine Zeichenkette aus der Zwischenablage benutzername liefert den Benutzernamen zu einen Kürzel;
1. Parameter (String): Benutzerumgebungsvariable ermittelt den Wert der angegebenen Umgebungsvariable;
1. Parameter (String): Variablennamett Versucht eine Zeichenkette in deutscher Sprache mit dem Programm-Wörterbuch in die aktuell eingestellte Sprache zu übersetzen;
1. Parameter (String): eine Zeichenkettebestand
liefert den aktuellen Bestand von Artikeln;
als Parameter ist die Artikelnummer als Ausdruck oder Datenbankfeld anzugeben,
weitere Parameter für detailliertere Lagerinformationen sind möglichbestandpm liefert den aktuellen Bestand von Artikeln in der Preismengeneinheit;
als Parameter ist die Artikelnummer als Ausdruck oder Datenbankfeld anzugeben,
weitere Parameter für detailliertere Lagerinformationen sind möglichgepackt liefert den gepackten Bestand von Artikeln;
als Parameter ist die Artikelnummer als Ausdruck oder Datenbankfeld anzugeben,
weitere Parameter für detailliertere Lagerinformationen sind möglichbestellt liefert die aktuell bestellte Menge von Artikeln;
1. Parameter: die Artikelnummer
2. Parameter: der Standort
als Ausdruck oder Datenbankfeld, der 2. Parameter kann weggelassen werdeninproduktion liefert die Menge von Artikeln, die produziert wird;
1. Parameter: die Artikelnummer
2. Parameter: der Standort
als Ausdruck oder Datenbankfeld, der 2. Parameter kann weggelassen werdenreserviert liefert die aktuell reservierte Menge von Artikeln;
1. Parameter: die Artikelnummer
2. Parameter: der Standort
als Ausdruck oder Datenbankfeld, der 2. Parameter kann weggelassen werdenlistenpreis liefert den aktuellen Listenpreis von Artikeln;
als Parameter ist die Artikelnummer als Ausdruck oder Datenbankfeld anzugebenkalkulationspreis liefert den aktuellen Kalkulationspreis von Artikeln; als Parameter ist die Artikelnummer als Ausdruck oder Datenbankfeld anzugeben. belegtyp liefert die Beschreibung des Belegtyps; als Parameter ist der Belegtyp anzugeben. belegadresskuerzel liefert das Adresskürzel des Belegtyps (bspw. "KU" bei Kundenbelegen); als Parameter ist der Belegtyp anzugeben. belegeafaktor liefert die Information zur Interpretation von RNetto (bspw. bei Rechnungen +1, bei Gutschriften -1);
als Parameter ist der Belegtyp als Ausdruck oder Datenbankfeld anzugebenmwst liefert die Steuerprozente eines Steuerschlüssels zum aktuellen Datum;
als Parameter ist der Steuerschlüssel als Ausdruck oder Datenbankfeld anzugebenchecksumpost berechnet eine spezielle Prüfziffer;
der Parameter muss eine Zeichenkette mit 11 Ziffern liefernprojektsumme liefert in Abhängigkeit vom Preistyp des Projektes die Netto- oder Bruttoprojektsumme;
als Parameter ist die Nummer des Projektes anzugebenpreisgruppenbezeichnung liefert die Bezeichnung einer Preisgruppe; als Parameter ist dabei die Nummer der Preisgruppe als Zahl oder Zeichenkette zu übergeben nur Digitale Beleg (Import):
getarticlenumber
Liefert in Abhängigkeit von den übergebenden Eingangsparameter eine Artikelnummer zurück.
Syntax: getarticlenumber("artikelnummer"; "eannummer"; "bestellnummer"; "lieferant")
eannummer: GTIN/EAN Nummer
bestellnummer : Bestellnummer beim Lieferanten
lieferant: aktuelle Lieferantennummer
Die Funktion liefert eine leere Zeichenfolge zurück (kein Fehler), wenn keine Artikelnummer gefunden wurde.
Es wird nur nach die Bestellnummer gesucht, wenn die beide Parameter "bestellnummer" und "lieferantennummer" gefüllt sind.
gettaxcode
Liefert in Abhängigkeit von den übergebenden Eingangsparameter einen Steuercode zurück.
Syntax: gettaxcode("zugferdkategorie"; "belegdatum"; steuerprozent/"steuerprozent")
zugferdkategorie: Pflichtfeld
belegdatum: wenn leer wird das heutige Datum verwendet
steuerprozent: Pflichtfeld, Wert in Double (7.5) oder String ("7.5")
- Beispiele:
bestellt({Artikelnummer};"1") liefert die für den Standort "1" bestellte Menge des vom Datenfeld "Artikelnummer" ausgegebenen Artikel
bestand("500009";"1";"500,1,1") liefert den Bestand des Artikels "500009" auf dem Lagerplatz "500,1,1," des Flächenlagers "500" im Standort "1".
shellexecute("notepad";"c:\test.txt";3) öffnet die Datei c:\test.txt im maximierten NotePad.Diese speziellen Funktionen sind über Formelplatzhalter in jeder Druckvorlage anwendbar, in denen die benötigten Parameter zur Verfügung stehen.